home *** CD-ROM | disk | FTP | other *** search
-
- ================================================================
- === VERSION 3.7 CHANGES ------------------------------------->>>
- ================================================================
-
- New Events :
-
- - xHOTKEY KeyCombination ON|OFF
- Gui4Cli now installs a Commodities Exchange Broker through which
- you can define various HotKeys. The KeyCombination can be something
- like "rawkey lshift f2" (see guide) and it "happens" when the user
- inputs this combination from whereever (i.e. even if a non - Gui4Cli
- window is the active one). You can give it a GADID and SETGAD it
- ON|OFF, and you can also UPDATE it, giving a new KeyCombination.
-
- - xNOTIFY File|Directory ON|OFF
- Will set notification on a file or directory and will "happen"
- every time the given file/dir changes in some way (i.e. if it
- is written to or deleted or whatever). You can give it a GADID
- and SETGAD it ON|OFF and you can also UPDATE it, giving a new
- file/dir name.
-
- New Commands :
-
- - SPEAK TextString
- Will use the "translator.library" (LIBS:) and the "narrator.device"
- (DEVS:), both of which you must have, to speak the given text. The
- speaking is done synchronously - i.e. Gui4Cli will stop and wait
- for the speaking to finish before proceeding.
-
- - SET SPEAK Rate/Pitch/Sex/Mode/Volume/Freq
- Will change the voice used in speaking to the new values you give.
- See guide for their meaning. The default is: 150/110/0/0/64/22200
-
- - SETSCREENTITLE GuiName Text
- Will set the text that will be shown in the screen's title bar,
- whenever the given Gui's window is the active one.
-
- - FLASH - Will flash the screen - use it to indicate an error.
-
- - MOVESCREEN GuiName/#ScreenName X Y
- Will move the screen that GuiName is (or will) open on to position
- X, Y. You can also give the ScreenName directly, by putting # in front.
-
- - WORKBENCH OPEN|CLOSE - will open or close the Workbench
-
- - SETATTR GuiName/GadID ATRIBUTE VALUE - will set the attributes of the
- given gadget. Does the same as the ATTR gadget modifier, but dynamically.
- Ex: SetAttr Mygui.gc/1 LVLINEDIST 3 - note that you would have to
- redraw the listview for the change to be visible.
- (This command was supposedly available in last version, but was not)
-
- Sound support :
-
- Standard mono IFF Samples, up to 64k in length, can now be loaded and
- used as sound effects or reminders. The commands that handle them,
- are similar to the image handling commands :
-
- - LOADSOUND FileName Alias - will load the sample and name it "Alias"
- - FREESOUND Alias - will free the above sample
- - PLAYSOUND Alias - will play the sound once
-
- - SETSOUND Alias VOLUME/SPEED value
- Will set the VOLUME (1-64) or the SPEED (124-1000) ie the pitch.
-
- Sounds can be used as effects on all types of gadgets, and on other
- events like window open/close, RMB and xOnKey. There are 2 ways you
- can do this.
-
- 1.- You can define the sound effects globally, and these will be
- used in all guis:
-
- > SET SndOpen|SndClose|SndGad|SndRMB|SndKey Alias
-
- You can set all these from the Gui4Cli.gc gui (called from
- the main requester in the WB tools menu)
-
- 2.- Or, you can define a different sound for every gadget, or key
- or window etc, using the Attribute system, with:
-
- > SETATTR mygui.gc/1 SOUND mysound <or> ATTR SOUND mysound
-
- The sound will be played every time the event is triggered.
- An attribute, if defined, will take precedence over a global sound.
- Note that with ATTR, sounds can also be attached to xONOPEN, xONCLOSE,
- xRMB and xONKEY events.
-
- TextIn hook :
-
- Added a TextIn gadget hook, providing the following :
-
- xTextIn Gadget Attributes (for ATTR & SETATTR):
-
- - TITYPE INT/FLOAT/HEX/DATE/UPPER/LOWER/STRING
- Will let you define what kind of data can be entered in the
- gadget. <Attr TiType FLOAT> for example will only let you
- enter numbers and '.' into it. DATE will allow numbers and /.-
- STRING allows anything. (*** still needs work on formating ***)
-
- - TITRANS ON|OFF
- The text in the textin gadget will, by default, be translated
- as soon as you've finished entering data. Set this attribute to
- OFF to stop translation.
-
- xTextIn Internal variables :
-
- $$TI.POS - the cursor position in the current textin gadget
- $$TI.LENGTH - total length of string in the gadget
- $$TI.REC - the string in the gadget
- $$TI.ID - the ID of the gadget
- $$TI.GUI - the name of the gui it's in
-
- Internal variables :
-
- - $$LV.VAR internal variable - will give you the (full path of) the
- name of the listview variable. eg: mygui.gc/myvar
-
- - $$RAND.xxx - will supply you with a random number from 0 to "xxx".
- eg: $$Rand.100 - will give you a random number from 0 to 100.
- Note that if you want a range of 1-100, you would have to do
- x = $($$rand.99 + 1) - The function used is SAS's drand48() which
- generates the number using a linear congruential algorithm and 48bit
- arithmetic... (swear to God :)
-
- - $$MEM.CHIP - the remaining chip memory
- - $$MEM.FAST - the remaining fast memory
- - $$MEM.ALL - all the remaining memory
- - $$MEM.CLARGE - largest chip memory block (slow)
- - $$MEM.FLARGE - largest fast mem block (slow)
-
- - $$G4C.TABS - current tab size
- - $$G4C.GRID - current grid size
-
- Attributes (ATTR & SETATTR) :
-
- - LVFILTER Pattern
- Will filter the files in a dir listview according to the
- pattern you give - examp - make a LV hide all the icons:
- - SetAttr MyGui.gc/1 LVFILTER "~(#?.info)"
- Must <LVDir refresh> for the change to actually take place.
-
- Improvements :
-
- - MakeScreen will now also understand the size argument as :
- Width/Height/Depth/ViewMode - viewmode is optional
- > MakeScreen MyScreen 640/512/4/0x21004 'my screen'
-
- - You can now give -10 as Top in a WinBig command and the window
- will be positioned just under the screen title bar.
-
- - New operator: !! (double exclamation) means not equal, but unlike
- the != operator, it's case insensitive - i.e. <if a !! A> is FALSE
-
- - Made a big internal change in the way commands are recognized
- and structured. As a result, Gui4Cli now parses files a little
- faster (we're talking microseconds here.. if you can tell the
- difference you're probably an alien). More importantly it allows
- me to add and manage commands easier.
-
- - The second part of an internal variable will now be translated
- if it's a variable - (eg: $$RAND.$x) - $x must be a simple
- variable - no paths, [], or var-in-var allowed.
-
- Changes to Guis :
-
- - Changed the Gui4Cli.gc gui. The preferences now include sound
- effects. Also, now they can be saved in file guis:Gui4Cli.prefs
- which is a file that Gui4Cli will look for the 1st time it starts
- up and run it, if it finds it.
-
- Bugs & Fixes :
-
- - Fixed nasty bug in Set Buffers NewSize.
-
- - Some programs like DPaint and Scala ignored arexx messages sent
- from Gui4Cli with the SendRexx command. That has now been fixed.
- They wanted the ln_Name field of the msg to be set to "REXX"
-
- - Buffers for the SETWINTITLE and SETSCREENTITLE commands are
- now allocated dynamically, so there no need anymore to ensure
- that the string buffer you give is large enough to fit the
- translated version of the string. You can now do :
- > SetWinTitle mygui.gc '$$lv.dir'
-
- - SetWinTitle will now recognise the #this keyword
-
- - Changed tab handling in listviews. Before, tabs were expanded
- when the file was loaded. This meant that tabs became spaces
- if you thereafter saved the file again with LVSave. Now, the
- file is loaded as is, and tab expansion is done in the Listview
- hook, at rendering time. It's better this way..
-
- - Changed the LVFormat Extension (used in the CedBar.gc gui)
- to account for the above change.
-
- - MakeScreen - background pics now have correct colors.
-
- - SetColor will disregard colors which are out of range.
-
- - Fixed WinOnMouse mouse position. It didn't account for different
- screen positions.
-
-